CS/ENGRI 172, Fall 2003: Computation, Information, and Intelligence
8/29/03: Course Information

Knowledge without appropriate procedures for its use is [mute], and procedure without suitable knowledge is blind.
- Herb Simon, ``Artificial Intelligence Systems that Understand'', 1977.

Time and Place MWF 10:10 am - 11:00 am, Hollister 306

Instructor Amanda Holland-Minkley, hollandm@cs.cornell.edu
  Rhodes 403, 255-8957

Teaching Assistants Amy Gale, amyg@cs.cornell.edu
  William Lin, wrl5@cornell.edu
  Shannon McGrath, szm2@cornell.edu

Office Hours To be announced...

Course Website http://www.cs.cornell.edu/Courses/cs172/2003fa/

Sections: Syllabus, Enrollment Information and Policy, Important Dates, Course Materials, Homework and Exams, Coursework, Academic Integrity, Other Resources

Syllabus

This course offers a non-programming, but mathematically rigorous, introduction to computer science through the perspective of the problem of artificial intelligence. We will be covering a variety of material, ranging from classic material to very recent research results. While we begin and end with somewhat philosophical material, in general we will focus on technical, mathematically- and computationally-oriented issues. In general, the course will be organized as follows:

1. Computation
2. Information
3. Intelligence

Enrollment Information and Policy

The prerequisite for this class is elementary calculus. This class satisfies the ENGRI requirement for engineering students. It satisfies the mathematics and quantitative reasoning requirement for arts and sciences students. It cannot be used as a substitute for CS100 or CS99. The official policy is that the course is not open to those who have CS100-level experience.

Enrollment Policy: This course is intended to serve as an introduction to computer science with a focus on artificial intelligence. It is therefore clearly not appropriate for you if you already have experience with computer science: the course will not serve your needs well, and the learning environment for students without such experience may be degraded (for example, if questions are being asked in class that the other students do not have the background to understand). We suggest other classes below that would be more appropriate and have some overlap with the material we will cover.

That being said, having some programming background is not necessarily the same as having CS background. Furthermore, having programming experience many not convey any advantage. Hence, exceptions may be permitted on a case-by-case basis. This decision will be based partly on the results of the survey passed out in class today, which will help me gauge the average level of experience among all students, and partly on individual situations. Hence, if you have placed out of CS100 and would still like to take the course, you must the instructor today either directly after class or from 1:00 - 2:00 PM in 403 Rhodes. During these individual meetings, we will discuss your situation and your options.

Those interested in the material but possessing prior programming experience at the level of CS100 or above may wish to consider taking CS430 (Information Discovery), CS472 (Foundations of Artificial Intelligence), CS474 (Introduction to Natural Language Processing) or CS478 (Machine Learning) upon completion of the appropriate prerequisites. The department also offers a number of related graduate courses. Other courses students may find of interest include PSYCH214 (Cognitive Psychology), CS324/COGST424/LING424 (Computation Linguistics), S&TS355 (Computers: From Babbage to Gates), or S&TS438/COGST438 (Minds, Machines, and Intelligence).

Important Dates

September 19: Deadline for registration, adding a course or changing credit or grade options
October 13: No class, Fall Break
October 17: In-class midterm
October 17: Deadline to drop a course or withdraw
November 28: No class, Thanksgiving Break
December 5: Classes end
December 15: Final exam

Course Materials

Lecture is the primary communication point, and attendance (which of course is expected in all Cornell courses) is especially important given that there is no text. Handouts will be distributed frequently, and extra copies will be available in the racks outside Upson 303. Course policy is that posting of handouts to the class website will lag behind hardcopy distribution in class and at Upson 303, and the right is reserved not to post some handouts online at all. Since hardcopies of the handouts are available at all hours in the Upson 303 racks, this should pose no problem.

Unclaimed homework and exams for which batch return has been permitted will be available in the bins inside Upson 303 during business hours.

References: Supplemental material for some of the course topics have been put on reserve at the Engineering Library, Carpenter Hall. These books are not required (lecture handouts and your own notes will be your primary references), but some students may find the alternate perspectives useful, and they are a particularly good resource if you are interested in learning more about a topic than is able to be covered in class.

A classic reference on AI is Stuart Russell and Peter Norvig, Artificial Intelligence: A Modern Approach (Prentice Hall, 1995).

A very nice book is Richard K. Belew, Finding Out About: A Cognitive Perspective on Search Engine Technology and the WWW (Cambridge University Press, 2001). It discusses a number of the topics we will consider in the information section of the class, although the level of presentation sometimes varies (in both directions) with respect to the depth we will explore in lecture.

Some of our coverage of traditional IR topics is drawn from Bill Frakes and Ricardo Baeza-Yates, Eds., Information Retrieval: Data Structures and Algorithms (Prentice-Hall, 1992).

Homework and Exams

There will be six problem sets, comprising 60% of the course grade, due at the beginning of class on their due dates, and handed out at least a week in advance. Homeworks are tentatively scheduled to be due 9/24, 10/1, 10/8, 10/29, 11/19, and 12/3 (all Wednesdays), though we may deviate from this schedule if necessary; official due dates will be given on homework assignments when they are handed out. Late homeworks will not be accepted (for emergencies, contact the instructor).

There will be an in-class midterm on Friday, October 17th worth 15% of the course grade. There will be a comprehensive final exam on Monday, December 15th at 12:00 - 2:30 PM worth 25% of the course grade.

Collaboration and citation policy: You may discuss homework problems and general solution strategies with each other, but you must develop the details yourself and write up solutions separately without the aid of collaborative notes. Therefore, one student should never have a copy of even part of another student's homework. You are allowed to consult other books, web pages, and so forth, but you must cite your sources if you do so (this includes mentioning who you worked with), and you must write up your answer in such a way as to demonstrate that you understand the solution. This implies that simply copying answers from other sources is not acceptable. When in doubt, ask beforehand!

Regrade policy: The course staff will grade your work carefully. However, questions about grading do occasionally arise. If so, first read the solutions. If questions persist, please see the teaching assistant who graded the problem in question or the instructor (come to office hours or schedule an appointment). In the interests of smooth administration and also to encourage you to look at your graded work soon after it is returned, regrade requests must be made within one week of when the work was returned. We reserve the right to make regrade decisions ``off-line'' (i.e., not immediately at the time requested).

Coursework

CS/ENGRI 172 is a freshman-level, rigorous, non-programming course: while programming skills are an essential part of a computer science education (and other engineering and scientific disciplines), computer science itself encompasses much more. Indeed, artificial intelligence our particular focus of study, draws on many fields, including linguistics, mathematics, philosophy, and psychology.

Since there is no programming assumed and no programming done, this class is not a substitute for CS99 or CS100. Still, the coursework will be challenging, technical, and often mathematical in outlook. We will be covering material ranging from classic introductory AI topics to very recent research results (this is why there is no textbook). To try to give you an idea of what homeworks will be like, here is an excerpt of a sample question. Naturally, you aren't expected to understand the problem or even the notation; the intent is simply to convey the kind of assignments to expect.

(Sample Problem) Recall from lecture that a perceptron with fixed weight vector $\vec{w}$ and threshold T outputs 1 if $\vec{w}\cdot \vec{x}
\geq T$, and outputs 0 otherwise. Define a surpetron as being like a perceptron in that it has a fixed weight vector $\vec{w}$ and threshold T, but it outputs 1 if $\mid \vec{w}\cdot \vec{x} \mid \geq T$, and outputs 0 otherwise. Explain how, given any surpetron, one can construct a small network of perceptrons that computes exactly the same function as the surpetron.

In general, homeworks will test your understanding of lecture material by asking you to applying techniques and algorithms in new settings, demonstrating the effect of altering assumptions, or extending formalisms. As part of this, you will be required to provide explanations for your work on all homeworks; in general, credit will not be given for answers without explanations. By the end of the class, we hope that you will have developed an understanding of the standards of formalization and argument within computer science.

Academic Integrity

As in all Cornell classes, you are expected to maintain the utmost level of academic integrity in the course, in accordance with the Code of Academic Integrity (http://cuinfo.cornell.edu/Academic/AIC.html) and the homework policies outlined above. It is your responsibility to protect your work from unauthorized access. Again, if in doubt about whether something is allowed, ask beforehand.

Academic dishonesty has no place in a university or anywhere else: it wastes our time and yours, and it is unfair to everyone else. Any violation of this code will be penalized, as we take this issue very seriously.

Other Resources

The following resources may be useful to students. All students should also feel encouraged to talk to the instructor or other course staff if they have any concerns or questions.

Cornell Undergraduate Computer Science Program, http://www.cs.cornell.edu/ugrad/

Cornell University Study Skills Resources, Learning Strategies Center, http://www.clt.cornell.edu/campus/learn/SSWorkshops/SKResources.html

Academic Support Services for Engineering Students, http://www.engineering.cornell.edu/studentServices/Advising/AcademicSupportServices.html

College of Arts and Sciences Advising, http://www.arts.cornell.edu/stu-adv/

Engineering Advising, http://www.engineering.cornell.edu/studentServices/advising.cfm

Counseling & Psychological Services (CAPS), Gannett Health Center, http://www.gannett.cornell.edu/CAPS/

General Cornell Student Services Web Directory, http://www.sws.cornell.edu/sws/